const app = getApp()

import axios from '../../utils/axios'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    layout: false, // 切换展示布局
    showBrand: false, // 是否展示品牌模态框
    typeId: '',
    typeName: '',
    commodityList: [], // 商品list
    brandList: [], // 品牌list
    brandId: '', // 选择的品牌ID
    priceSort: '', // 价格排序
    saleSort: '', // 销量排序
    newSort: '', // 新品排序
    pageIndex: 1,
    showPull: false
  },

  onLoad: function (options) {
    // 只会有一个ID带进来，但不确定用户是点哪一个，先全部setData
    this.setData({
      typeId: options.typeId,
      typeName: options.typeName,
      brandId: options.brandId,
      saleSort: options.saleSort,
      newSort: options.newSort
    })

    wx.setNavigationBarTitle({
      title: options.typeName,
    })

    this.selectBrandList()

    this.selectGoodsList()
  },

  onShow: function () {

  },

  backPage: function () {
    wx.switchTab({
      url: '/pages/type/type',
    })
  },

  // 综合排序
  synthesize: function () {

    this.setData({
      pageIndex: 1,
      showPull: false
    })

    this.setData({
      priceSort: '',
      saleSort: '',
      newSort: '',
      brandId: ''
    })

    this.selectGoodsList()
  },

  // 销量排序
  salesSort: function () {

    this.setData({
      pageIndex: 1,
      showPull: false
    })

    if (this.data.saleSort == 1) {
      this.setData({
        saleSort: ''
      })
    } else {
      this.setData({
        saleSort: 1,
        newSort: '',
        priceSort: '',
        brandId: ''
      })
    }

    this.selectGoodsList()

  },

  // 价格排序
  priceSort: function () {

    this.setData({
      pageIndex: 1,
      showPull: false
    })

    if (this.data.priceSort == 1) {
      this.setData({
        priceSort: 2,
        newSort: '',
        saleSort: '',
        brandId: ''
      })
    } else if (this.data.priceSort == 2) {
      this.setData({
        priceSort: ''
      })
    } else if (this.data.priceSort == '') {
      this.setData({
        priceSort: 1,
        newSort: '',
        saleSort: '',
        brandId: ''
      })
    }

    this.selectGoodsList()
  },

  // 新品排序
  newSort: function () {

    this.setData({
      pageIndex: 1,
      showPull: false
    })

    if (this.data.newSort == 1) {
      this.setData({
        newSort: ''
      })
    } else {
      this.setData({
        newSort: 1,
        priceSort: '',
        saleSort: '',
        brandId: ''
      })
    }

    this.selectGoodsList()
  },

  // 查询商品
  selectGoodsList: function () {

    let paramJson = {
      store_id: app.globalData.storeId,
      page: this.data.pageIndex
    }

    if (this.data.typeId) {
      paramJson["type_id"] = this.data.typeId
    }

    if (this.data.priceSort) {
      paramJson["sort"] = this.data.priceSort
    }

    if (this.data.saleSort) {
      paramJson["sale"] = this.data.saleSort
    }

    if (this.data.newSort) {
      paramJson["order_by_time"] = this.data.newSort
    }

    if (this.data.brandId) {
      paramJson["brand_id"] = this.data.brandId
      delete paramJson['type_id']
    }

    axios('/cloud/goodsList', paramJson).then(res => {
      console.log(res)
      if (res.data.resultcode == 1) {
        if (res.data.result.length < 5) {
          this.setData({
            showPull: true
          })
        }

        if (this.data.pageIndex == 1) {
          this.setData({
            commodityList: app.disposeList(res.data.result)
          })
        } else {
          this.setData({
            commodityList: this.data.commodityList.concat(app.disposeList(res.data.result))
          })
        }


      }
    })
  },

  // 搜索点击事件
  checkSearch: function () {
    wx.navigateTo({
      url: '/pages/searchBox/searchBox?store_id=' + app.globalData.storeId,
    })
  },

  // 选中品牌
  selectedBrand: function (e) {
    this.setData({
      brandId: e.currentTarget.dataset.brandid
    })
  },

  // 选中品牌
  selectBrand: function () {

    if (this.data.brandId == "") {
      wx.showToast({
        title: '请选择品牌！',
        icon: 'none',
        duration: 1300
      })
      return
    }

    this.setData({
      saleSort: '',
      newSort: '',
      priceSort: '',
      showBrand: false,
      pageIndex: 1,
      showPull: false
    })

    this.selectGoodsList()

  },

  // 查询品牌列表
  selectBrandList: function () {

    axios('/cloud/goodsBrand', {
      store_id: app.globalData.storeId
    }).then(res => {
      console.log(res)
      if (res.data.resultcode == 1) {
        this.setData({
          brandList: res.data.result
        })
      }
    })
  },

  // 阻止事件冒泡，此方法不要删
  stopBubbling: function () {},

  // 点击品牌筛选
  cutBrand: function () {
    if (this.data.showBrand) {
      this.setData({
        showBrand: false
      })
    } else {
      this.setData({
        showBrand: true
      })
    }

  },

  // 切换展示布局
  cutLayout: function () {
    if (this.data.layout) {
      this.setData({
        layout: false
      })
    } else {
      this.setData({
        layout: true
      })
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    if (!this.data.showPull) {
      this.data.pageIndex++
      this.selectGoodsList()
    }

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})